@opengis/gis 0.2.10 → 0.2.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +5 -5
  2. package/dist/index.css +1 -1
  3. package/dist/index.js +3348 -3283
  4. package/dist/index.umd.cjs +36 -36
  5. package/module/cls.json +6 -6
  6. package/module/gis/card/gis.maps.table/index.yml +14 -14
  7. package/module/gis/card/gis.maps.table/main_info.hbs +25 -25
  8. package/module/gis/card/gis.maps.table/maps_layers.hbs +19 -19
  9. package/module/gis/card/gis.metadata.table/index.yml +22 -22
  10. package/module/gis/card/gis.metadata.table/main_info.hbs +20 -20
  11. package/module/gis/card/gis.metadata.table/metadata_info.hbs +27 -27
  12. package/module/gis/card/gis.metadata.table/other.hbs +25 -25
  13. package/module/gis/card/gis.rasters.table/index.yml +11 -11
  14. package/module/gis/card/gis.rasters.table/main_info.hbs +27 -27
  15. package/module/gis/card/gis.registers.table/cls.hbs +36 -36
  16. package/module/gis/card/gis.registers.table/columns.hbs +89 -89
  17. package/module/gis/card/gis.registers.table/filters.hbs +80 -80
  18. package/module/gis/card/gis.registers.table/index.yml +23 -23
  19. package/module/gis/card/gis.registers.table/main_info.hbs +35 -35
  20. package/module/gis/card/gis.registers.table/source.hbs +45 -45
  21. package/module/gis/card/gis.services.table/attributes.hbs +91 -91
  22. package/module/gis/card/gis.services.table/filters.hbs +83 -83
  23. package/module/gis/card/gis.services.table/index.yml +25 -25
  24. package/module/gis/card/gis.services.table/main_info.hbs +27 -27
  25. package/module/gis/card/gis.services.table/source.hbs +25 -25
  26. package/module/gis/cls/bool.yes_no.json +12 -12
  27. package/module/gis/cls/encoding.json +14 -14
  28. package/module/gis/cls/geom_type.json +14 -14
  29. package/module/gis/cls/gis.column_type.json +34 -34
  30. package/module/gis/cls/gis.column_view_type.json +26 -26
  31. package/module/gis/cls/gis.filter_type.json +22 -22
  32. package/module/gis/cls/language.json +10 -10
  33. package/module/gis/cls/meta.service_type.json +42 -42
  34. package/module/gis/cls/ogc.service.json +21 -21
  35. package/module/gis/cls/service_type.json +42 -42
  36. package/module/gis/cls/source_type.json +10 -10
  37. package/module/gis/cls/standarts.json +6 -6
  38. package/module/gis/cls/topic_category.json +106 -106
  39. package/module/gis/cls/update_frequency.json +29 -29
  40. package/module/gis/cls/view.json +21 -21
  41. package/module/gis/form/gis.group_list.form.json +17 -17
  42. package/module/gis/form/gis.maps.form.json +64 -64
  43. package/module/gis/form/gis.metadata.form.json +240 -240
  44. package/module/gis/form/gis.ogc_service.form.json +40 -40
  45. package/module/gis/form/gis.rasters.form.json +99 -99
  46. package/module/gis/form/gis.registers.form.json +110 -110
  47. package/module/gis/form/gis.registers_column.form.json +84 -84
  48. package/module/gis/form/gis.registers_filter.form.json +65 -65
  49. package/module/gis/form/gis.services.form.json +120 -120
  50. package/module/gis/form/gis.services_attributes.form.json +75 -75
  51. package/module/gis/form/gis.services_filter.form.json +65 -65
  52. package/module/gis/menu.json +43 -43
  53. package/module/gis/select/pg.columns.parent.sql +6 -6
  54. package/module/gis/select/pg.table_name.sql +17 -17
  55. package/module/gis/select/service_id.sql +1 -1
  56. package/module/gis/table/gis.group_list.table.json +35 -35
  57. package/module/gis/table/gis.maps.table.json +69 -69
  58. package/module/gis/table/gis.metadata.table.json +70 -70
  59. package/module/gis/table/gis.ogc_service.table.json +91 -91
  60. package/module/gis/table/gis.rasters.table.json +97 -97
  61. package/module/gis/table/gis.registers.table.json +79 -79
  62. package/module/gis/table/gis.services.table.json +99 -99
  63. package/module/gis/table/site.gis.registers.table.json +88 -88
  64. package/module/gis/table/site.gis.services.table.json +106 -106
  65. package/module/gis/templates/ISO19136_2017_gml_template.xml +330 -330
  66. package/module/gis/tokens.yml +5 -5
  67. package/module/test/cls/bp_build_type.json +37 -37
  68. package/module/test/cls/ts.temp_status.json +18 -18
  69. package/module/test/cls/ts.temp_structure.ts_class.json +49 -49
  70. package/module/test/cls/ts.temp_type.json +9 -9
  71. package/module/test/layer/bp.json +59 -59
  72. package/module/test/layer/bp1.yml +33 -33
  73. package/module/test/layer/individual.yml +53 -53
  74. package/module/test/layer/ts.linking_passport.yml +55 -55
  75. package/module/test/layer/ts.temp_structure.yml +50 -50
  76. package/module/test/map/addr.yml +21 -21
  77. package/module/test/map/bp_myo.json +43 -43
  78. package/module/test/map/bpf.json +43 -43
  79. package/module/test/map/main.json +36 -36
  80. package/module/test/map/mbd.json +91 -91
  81. package/module/test/map/ts.json +52 -52
  82. package/module/test/select/address_id.json +2 -2
  83. package/module/test/select/address_id.sql +7 -7
  84. package/module/test/table/data_address.street.table.json +69 -69
  85. package/module/test/table/data_bp_myo.bp.table.json +122 -122
  86. package/package.json +67 -67
  87. package/plugin.js +44 -44
  88. package/server/migrations/ogc.sql +106 -106
  89. package/server/migrations/rasters.sql +263 -263
  90. package/server/migrations/services.sql +247 -247
  91. package/server/migrations/widgets.sql +20 -20
  92. package/server/plugins/crons.js +21 -21
  93. package/server/plugins/mapnik/funcs/createXML.js +72 -72
  94. package/server/plugins/mapnik/funcs/gdalWrapper.js +72 -72
  95. package/server/plugins/mapnik/funcs/map.proto +241 -241
  96. package/server/plugins/mapnik/funcs/mapnik.js +106 -106
  97. package/server/plugins/mapnik/funcs/rasterConfig.js +11 -11
  98. package/server/plugins/mapnik/funcs/rasterExists.js +20 -20
  99. package/server/plugins/mapnik/funcs/rasterInfo.js +109 -109
  100. package/server/plugins/mapnik/funcs/rasterVrt.js +55 -55
  101. package/server/plugins/mapnik/funcs/rasterXML.js +65 -65
  102. package/server/plugins/mapnik/funcs/rootFolder.mjs +8 -8
  103. package/server/plugins/mapnik/utils/map.proto +241 -241
  104. package/server/plugins/vite.js +74 -74
  105. package/server/routes/gis/index.mjs +59 -59
  106. package/server/routes/gis/metadata/metadataXML.js +13 -13
  107. package/server/routes/gis/ogc/map.info.point.js +124 -124
  108. package/server/routes/gis/registers/add.registry.js +35 -35
  109. package/server/routes/gis/registers/del.registry.js +14 -14
  110. package/server/routes/gis/registers/funcs/classifiers.js +100 -100
  111. package/server/routes/gis/registers/funcs/columns.js +4 -4
  112. package/server/routes/gis/registers/funcs/content.type.js +9 -9
  113. package/server/routes/gis/registers/funcs/get.info.js +89 -89
  114. package/server/routes/gis/registers/funcs/handleRegistryRequest.js +122 -122
  115. package/server/routes/gis/registers/gis.export.js +148 -148
  116. package/server/routes/gis/registers/gis.registry.js +38 -38
  117. package/server/routes/gis/registers/gis.registry.list.js +59 -59
  118. package/server/routes/gis/registers/insert.columns.js +107 -107
  119. package/server/routes/gis/registers/insert.filters.js +110 -110
  120. package/server/routes/gis/registers/map.registry.js +79 -79
  121. package/server/routes/gis/services/add.service.js +64 -64
  122. package/server/routes/gis/services/del.service.js +12 -12
  123. package/server/routes/gis/services/get.layer.geom.js +27 -27
  124. package/server/routes/gis/services/get.services.col.js +33 -33
  125. package/server/routes/gis/services/get.services.js +84 -84
  126. package/server/routes/gis/services/legend.auto.js +77 -77
  127. package/server/routes/map/controllers/layerList.js +60 -60
  128. package/server/routes/map/controllers/map.js +123 -123
  129. package/server/routes/map/controllers/mapCatalog.js +72 -72
  130. package/server/routes/map/controllers/mapCatalogAttribute.js +55 -55
  131. package/server/routes/map/controllers/mapFeatures.js +128 -128
  132. package/server/routes/map/controllers/mapFormat.js +83 -83
  133. package/server/routes/map/controllers/mapTiles.js +152 -152
  134. package/server/routes/map/controllers/maps.js +15 -15
  135. package/server/routes/map/controllers/marker_icon.js +43 -43
  136. package/server/routes/map/controllers/rtile.js +134 -134
  137. package/server/routes/map/controllers/vtile.js +172 -172
  138. package/server/routes/map/index.mjs +86 -86
  139. package/server/routes/map/maps/add.map.js +41 -41
  140. package/server/routes/map/maps/del.map.js +18 -18
  141. package/server/routes/map/maps/get.map.js +88 -88
  142. package/server/routes/map/vtile1.js +170 -170
  143. package/server/routes/map/widgets/add.widget.js +38 -38
  144. package/server/routes/map/widgets/del.widget.js +22 -22
  145. package/server/routes/map/widgets/get.widget.js +40 -40
  146. package/server/routes/root.mjs +3 -3
  147. package/utils.js +11 -11
package/plugin.js CHANGED
@@ -1,44 +1,44 @@
1
- import fp from 'fastify-plugin';
2
-
3
- import {
4
- config, addHook, getMeta, pgClients, execMigrations,
5
- } from '@opengis/fastify-table/utils.js';
6
-
7
- config.prefix = config.prefix || '/api';
8
-
9
- import { join, dirname } from 'path';
10
- import { fileURLToPath } from 'url';
11
-
12
- const dir = dirname(fileURLToPath(import.meta.url));
13
-
14
- execMigrations(join(dir, 'server/migrations'), pgClients.client).catch(err => console.error(err.toString()));
15
-
16
- const columnType = {
17
- text: 'text',
18
- date: 'date',
19
- bool: 'yes/no',
20
- numeric: 'number',
21
- integer: 'number',
22
- 'timestamp without time zone': 'date',
23
- 'timestamp with time zone': 'date',
24
- };
25
-
26
- async function plugin(app, opts = config) {
27
- // API
28
- app.register(import('./server/routes/map/index.mjs'), opts);
29
- app.register(import('./server/plugins/crons.js'), opts);
30
- app.register(import('./server/routes/gis/index.mjs'), opts);
31
-
32
- addHook('afterData', async ({
33
- pg = pgClients.client, payload, id, template,
34
- }) => {
35
- if (!template) return null;
36
- const table = { 'gis.services.table': payload?.rows?.[0]?.source_path, 'gis.registers.table': payload?.rows?.[0]?.table_name }[template];
37
- if (!table || !payload.columns?.length || !id || !pgClients?.client?.pk?.[table]) return null;
38
-
39
- const { columns = [] } = await getMeta({ table, pg });
40
- // payload.rows[0].token = payload.tokens?.edit; // token with ignore filtering of payload keys check
41
- Object.assign(payload, { fields: columns?.map?.(({ name, title, dataTypeID }) => ({ name, title: title || name, type: columnType[pg?.pgType?.[dataTypeID] || 'text'] })).filter(el => el.type) });
42
- });
43
- }
44
- export default fp(plugin);
1
+ import fp from 'fastify-plugin';
2
+
3
+ import {
4
+ config, addHook, getMeta, pgClients, execMigrations,
5
+ } from '@opengis/fastify-table/utils.js';
6
+
7
+ config.prefix = config.prefix || '/api';
8
+
9
+ import { join, dirname } from 'path';
10
+ import { fileURLToPath } from 'url';
11
+
12
+ const dir = dirname(fileURLToPath(import.meta.url));
13
+
14
+ execMigrations(join(dir, 'server/migrations'), pgClients.client).catch(err => console.error(err.toString()));
15
+
16
+ const columnType = {
17
+ text: 'text',
18
+ date: 'date',
19
+ bool: 'yes/no',
20
+ numeric: 'number',
21
+ integer: 'number',
22
+ 'timestamp without time zone': 'date',
23
+ 'timestamp with time zone': 'date',
24
+ };
25
+
26
+ async function plugin(app, opts = config) {
27
+ // API
28
+ app.register(import('./server/routes/map/index.mjs'), opts);
29
+ app.register(import('./server/plugins/crons.js'), opts);
30
+ app.register(import('./server/routes/gis/index.mjs'), opts);
31
+
32
+ addHook('afterData', async ({
33
+ pg = pgClients.client, payload, id, template,
34
+ }) => {
35
+ if (!template) return null;
36
+ const table = { 'gis.services.table': payload?.rows?.[0]?.source_path, 'gis.registers.table': payload?.rows?.[0]?.table_name }[template];
37
+ if (!table || !payload.columns?.length || !id || !pgClients?.client?.pk?.[table]) return null;
38
+
39
+ const { columns = [] } = await getMeta({ table, pg });
40
+ // payload.rows[0].token = payload.tokens?.edit; // token with ignore filtering of payload keys check
41
+ Object.assign(payload, { fields: columns?.map?.(({ name, title, dataTypeID }) => ({ name, title: title || name, type: columnType[pg?.pgType?.[dataTypeID] || 'text'] })).filter(el => el.type) });
42
+ });
43
+ }
44
+ export default fp(plugin);
@@ -1,107 +1,107 @@
1
- CREATE TABLE if not exists gis.ogc_service
2
- (
3
- ogc_service_id text NOT NULL DEFAULT admin.next_id(),
4
- name text, -- Назва
5
- service text, -- TMS/WMS/WFS
6
- url text, -- Шлях
7
- enabled boolean, -- Опис
8
- geom geometry, -- Баунд
9
- updated_by text,
10
- updated_at timestamp without time zone,
11
- created_at timestamp without time zone DEFAULT date_trunc('minutes'::text, now()),
12
- created_by text,
13
- group_id text, -- Ідентифікатор групи
14
- ispublic boolean DEFAULT false, -- Чи є сервіс публічним
15
- service_id text DEFAULT admin.next_id(), -- ID
16
- srid text, -- srid
17
- info text,
18
- scheme text, -- Схема
19
- category text, -- Категорія
20
- attribution text, -- Атрибуція
21
- editor_id text,
22
- editor_date timestamp without time zone,
23
- cdate timestamp without time zone DEFAULT date_trunc('minutes'::text, now()),
24
- uid text,
25
- files json,
26
- access_level text DEFAULT 'public'::text, -- Рівень доступу (public, user, admin)
27
- sub_layers text, -- Під шари (Для WMS)
28
- isadmin boolean DEFAULT false, -- Ознака доступу лише для адмін частини порталу
29
- user_group_id text, -- Група користувачів
30
- url_list text[], -- URL List
31
- table_name text, -- Таблиця на клік (інтерактивний шар)
32
- setting json, -- Додаткові налаштування
33
- CONSTRAINT ogc_service_pkey PRIMARY KEY (ogc_service_id),
34
- CONSTRAINT gis_ogc_service_group_id_fkey FOREIGN KEY (group_id)
35
- REFERENCES gis.group_list (group_id) MATCH SIMPLE
36
- ON UPDATE NO ACTION ON DELETE NO ACTION
37
- );
38
-
39
- COMMENT ON TABLE gis.ogc_service IS 'Сервіси';
40
-
41
- COMMENT ON COLUMN gis.ogc_service.name IS 'Назва';
42
- COMMENT ON COLUMN gis.ogc_service.service IS 'TMS/WMS/WFS';
43
- COMMENT ON COLUMN gis.ogc_service.url IS 'Шлях';
44
- COMMENT ON COLUMN gis.ogc_service.enabled IS 'Опис';
45
- COMMENT ON COLUMN gis.ogc_service.geom IS 'Баунд';
46
- COMMENT ON COLUMN gis.ogc_service.group_id IS 'Ідентифікатор групи';
47
- COMMENT ON COLUMN gis.ogc_service.ispublic IS 'Чи є сервіс публічним';
48
- COMMENT ON COLUMN gis.ogc_service.service_id IS 'ID';
49
- COMMENT ON COLUMN gis.ogc_service.srid IS 'srid';
50
- COMMENT ON COLUMN gis.ogc_service.scheme IS 'Схема';
51
- COMMENT ON COLUMN gis.ogc_service.category IS 'Категорія';
52
- COMMENT ON COLUMN gis.ogc_service.attribution IS 'Атрибуція';
53
- COMMENT ON COLUMN gis.ogc_service.access_level IS 'Рівень доступу (public, user, admin)';
54
- COMMENT ON COLUMN gis.ogc_service.sub_layers IS 'Під шари (Для WMS)';
55
- COMMENT ON COLUMN gis.ogc_service.isadmin IS 'Ознака доступу лише для адмін частини порталу';
56
- COMMENT ON COLUMN gis.ogc_service.user_group_id IS 'Група користувачів';
57
- COMMENT ON COLUMN gis.ogc_service.url_list IS 'URL List';
58
- COMMENT ON COLUMN gis.ogc_service.table_name IS 'Таблиця на клік (інтерактивний шар)';
59
- COMMENT ON COLUMN gis.ogc_service.setting IS 'Додаткові налаштування';
60
-
61
- CREATE INDEX if not exists gis_ogc_service_category_trgm_idx
62
- ON gis.ogc_service
63
- USING gin
64
- (category COLLATE pg_catalog."default" gin_trgm_ops);
65
-
66
- CREATE INDEX if not exists gis_ogc_service_enabled_btree_idx
67
- ON gis.ogc_service
68
- USING btree
69
- (enabled);
70
-
71
- CREATE INDEX if not exists gis_ogc_service_isadmin_btree_idx
72
- ON gis.ogc_service
73
- USING btree
74
- (ispublic);
75
-
76
- CREATE INDEX if not exists gis_ogc_service_ispublic_btree_idx
77
- ON gis.ogc_service
78
- USING btree
79
- (ispublic);
80
-
81
- CREATE INDEX if not exists gis_ogc_service_name_gin_idx
82
- ON gis.ogc_service
83
- USING gin
84
- (name COLLATE pg_catalog."default" gin_trgm_ops);
85
-
86
- CREATE INDEX if not exists gis_ogc_service_name_gin_idx_lower
87
- ON gis.ogc_service
88
- USING gin
89
- (lower(name) COLLATE pg_catalog."default" gin_trgm_ops);
90
-
91
- CREATE INDEX if not exists gis_ogc_service_name_trgm_idx
92
- ON gis.ogc_service
93
- USING gin
94
- (name COLLATE pg_catalog."default" gin_trgm_ops);
95
-
96
- CREATE INDEX if not exists gis_ogc_service_service_btree_idx
97
- ON gis.ogc_service
98
- USING btree
99
- (service COLLATE pg_catalog."default");
100
-
101
- CREATE INDEX if not exists gis_ogc_service_srid_btree_idx
102
- ON gis.ogc_service
103
- USING btree
104
- (srid COLLATE pg_catalog."default");
105
-
106
- alter table gis.ogc_service add column if not exists html text;
1
+ CREATE TABLE if not exists gis.ogc_service
2
+ (
3
+ ogc_service_id text NOT NULL DEFAULT admin.next_id(),
4
+ name text, -- Назва
5
+ service text, -- TMS/WMS/WFS
6
+ url text, -- Шлях
7
+ enabled boolean, -- Опис
8
+ geom geometry, -- Баунд
9
+ updated_by text,
10
+ updated_at timestamp without time zone,
11
+ created_at timestamp without time zone DEFAULT date_trunc('minutes'::text, now()),
12
+ created_by text,
13
+ group_id text, -- Ідентифікатор групи
14
+ ispublic boolean DEFAULT false, -- Чи є сервіс публічним
15
+ service_id text DEFAULT admin.next_id(), -- ID
16
+ srid text, -- srid
17
+ info text,
18
+ scheme text, -- Схема
19
+ category text, -- Категорія
20
+ attribution text, -- Атрибуція
21
+ editor_id text,
22
+ editor_date timestamp without time zone,
23
+ cdate timestamp without time zone DEFAULT date_trunc('minutes'::text, now()),
24
+ uid text,
25
+ files json,
26
+ access_level text DEFAULT 'public'::text, -- Рівень доступу (public, user, admin)
27
+ sub_layers text, -- Під шари (Для WMS)
28
+ isadmin boolean DEFAULT false, -- Ознака доступу лише для адмін частини порталу
29
+ user_group_id text, -- Група користувачів
30
+ url_list text[], -- URL List
31
+ table_name text, -- Таблиця на клік (інтерактивний шар)
32
+ setting json, -- Додаткові налаштування
33
+ CONSTRAINT ogc_service_pkey PRIMARY KEY (ogc_service_id),
34
+ CONSTRAINT gis_ogc_service_group_id_fkey FOREIGN KEY (group_id)
35
+ REFERENCES gis.group_list (group_id) MATCH SIMPLE
36
+ ON UPDATE NO ACTION ON DELETE NO ACTION
37
+ );
38
+
39
+ COMMENT ON TABLE gis.ogc_service IS 'Сервіси';
40
+
41
+ COMMENT ON COLUMN gis.ogc_service.name IS 'Назва';
42
+ COMMENT ON COLUMN gis.ogc_service.service IS 'TMS/WMS/WFS';
43
+ COMMENT ON COLUMN gis.ogc_service.url IS 'Шлях';
44
+ COMMENT ON COLUMN gis.ogc_service.enabled IS 'Опис';
45
+ COMMENT ON COLUMN gis.ogc_service.geom IS 'Баунд';
46
+ COMMENT ON COLUMN gis.ogc_service.group_id IS 'Ідентифікатор групи';
47
+ COMMENT ON COLUMN gis.ogc_service.ispublic IS 'Чи є сервіс публічним';
48
+ COMMENT ON COLUMN gis.ogc_service.service_id IS 'ID';
49
+ COMMENT ON COLUMN gis.ogc_service.srid IS 'srid';
50
+ COMMENT ON COLUMN gis.ogc_service.scheme IS 'Схема';
51
+ COMMENT ON COLUMN gis.ogc_service.category IS 'Категорія';
52
+ COMMENT ON COLUMN gis.ogc_service.attribution IS 'Атрибуція';
53
+ COMMENT ON COLUMN gis.ogc_service.access_level IS 'Рівень доступу (public, user, admin)';
54
+ COMMENT ON COLUMN gis.ogc_service.sub_layers IS 'Під шари (Для WMS)';
55
+ COMMENT ON COLUMN gis.ogc_service.isadmin IS 'Ознака доступу лише для адмін частини порталу';
56
+ COMMENT ON COLUMN gis.ogc_service.user_group_id IS 'Група користувачів';
57
+ COMMENT ON COLUMN gis.ogc_service.url_list IS 'URL List';
58
+ COMMENT ON COLUMN gis.ogc_service.table_name IS 'Таблиця на клік (інтерактивний шар)';
59
+ COMMENT ON COLUMN gis.ogc_service.setting IS 'Додаткові налаштування';
60
+
61
+ CREATE INDEX if not exists gis_ogc_service_category_trgm_idx
62
+ ON gis.ogc_service
63
+ USING gin
64
+ (category COLLATE pg_catalog."default" gin_trgm_ops);
65
+
66
+ CREATE INDEX if not exists gis_ogc_service_enabled_btree_idx
67
+ ON gis.ogc_service
68
+ USING btree
69
+ (enabled);
70
+
71
+ CREATE INDEX if not exists gis_ogc_service_isadmin_btree_idx
72
+ ON gis.ogc_service
73
+ USING btree
74
+ (ispublic);
75
+
76
+ CREATE INDEX if not exists gis_ogc_service_ispublic_btree_idx
77
+ ON gis.ogc_service
78
+ USING btree
79
+ (ispublic);
80
+
81
+ CREATE INDEX if not exists gis_ogc_service_name_gin_idx
82
+ ON gis.ogc_service
83
+ USING gin
84
+ (name COLLATE pg_catalog."default" gin_trgm_ops);
85
+
86
+ CREATE INDEX if not exists gis_ogc_service_name_gin_idx_lower
87
+ ON gis.ogc_service
88
+ USING gin
89
+ (lower(name) COLLATE pg_catalog."default" gin_trgm_ops);
90
+
91
+ CREATE INDEX if not exists gis_ogc_service_name_trgm_idx
92
+ ON gis.ogc_service
93
+ USING gin
94
+ (name COLLATE pg_catalog."default" gin_trgm_ops);
95
+
96
+ CREATE INDEX if not exists gis_ogc_service_service_btree_idx
97
+ ON gis.ogc_service
98
+ USING btree
99
+ (service COLLATE pg_catalog."default");
100
+
101
+ CREATE INDEX if not exists gis_ogc_service_srid_btree_idx
102
+ ON gis.ogc_service
103
+ USING btree
104
+ (srid COLLATE pg_catalog."default");
105
+
106
+ alter table gis.ogc_service add column if not exists html text;
107
107
  comment on column gis.ogc_service.html is 'HTML картки';